Project 3 codes and results for images from 11 to 20.

library(jpeg)
require(stats)
library("imager")
## Loading required package: magrittr
## 
## Attaching package: 'imager'
## The following object is masked from 'package:magrittr':
## 
##     add
## The following objects are masked from 'package:stats':
## 
##     convolve, spectrum
## The following object is masked from 'package:graphics':
## 
##     frame
## The following object is masked from 'package:base':
## 
##     save.image
library(ggplot2)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library("EBImage")
## 
## Attaching package: 'EBImage'
## The following objects are masked from 'package:imager':
## 
##     channel, dilate, display, erode, resize, watershed
library(wvtool)

Image 11

getwd()
## [1] "C:/Users/Sinan/Desktop"
setwd("C:/Users/Sinan/Desktop")
im<- load.image('Fabric11.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=10, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.126638
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 12

im<- load.image('Fabric12.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=100, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/4)
K
## [1] 3.811889
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 13

im<- load.image('Fabric13.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=10, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.046588
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 14

im<- load.image('Fabric14.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=60, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.309555
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 15

im<- load.image('Fabric15.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=10, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 4.649098
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 16

im<- load.image('Fabric16.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=10, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 5.45373
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 17

im<- load.image('Fabric17.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=60, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.805396
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 18

im<- load.image('Fabric18.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=18, theta=100, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.695151
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 19

im<- load.image('Fabric19.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=15, theta=60, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.326541
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 20

im<- load.image('Fabric20.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=15, theta=60, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.78225
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))

plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
  abline(h=upper,col="blue") +
  abline(h=lower,col="blue") + 
  abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
  for (j in c(1:512)) {
    if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
      new_image[i,j]<-0
    }
    
  }
}

pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)

pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))

par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)